home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
ACORNUSERS
/
CBSA
/
GAMES
/
ZIP2000
/
!Zip2000
/
!Help
< prev
next >
Wrap
Text File
|
1998-08-04
|
35KB
|
805 lines
Welcome to Zip 2000!
====================
Zip 2000 is a Standard interpreter (Revision 1.0) for Z-code programs.
In plain English, that means if you want to play Infocom interactive
fiction, or games written with the Inform compiler, this is the program for
you.
Features include:
* Full support for Version 1,2,3,4,5,6,7 & 8 games.
* Full conformance to Graham Nelson's "Z-Machine Standards
Document", Revision 1.0.
* Graphics support.
* Colour support.
* Timed-input support.
* Sound support.
* Mouse support.
* Menu support.
* Full function key/cursor key/keypad support.
* Full foreign language support, including runes and Unicode.
* Easily adjustable screen size.
* Full use of anti-aliased outline fonts.
* Line editing & command recall.
* Quetzal-format save files.
* Partial Blorb support.
* Multiple UNDO.
* High speed - the fastest Z-code interpreter for RISC OS.
* The best-looking Z-code interpreter on any platform.
What's Z-code?
--------------
In the dim and distant past, when one could buy more than one type of
computer, a certain company that wished to produce interactive fiction
wanted to come up with a portable game file that could be played on any
number of microcomputers. So they invented an imaginary computer called the
Z-machine, which ran an imaginary language called Z-code. They then compiled
their games for this machine, and effectively wrote a Z-machine emulator for
each computer they wished to support.
This program is a Z-machine emulator for RISC OS. With it you can play any
Infocom game and games (or programs - the Z-machine isn't limited to games)
produced with Graham Nelson's Z-code compiler "Inform".
How do I play an Infocom/Inform game, then?
-------------------------------------------
First, find your story file. Infocom games are most readily available in the
form of the "Lost Treasures of Infocom" packages. Buy the PC version, then
copy the .DAT and .ZIP files (Version 1-5 games are usually .DAT, version 6
games .ZIP) onto your hard disc (or a RISC OS floppy). Give them more
sensible names, and set their type to "Z-Code". Then, just double-click on
your chosen story file.
For Version 6 games (Arthur, Journey, Shogun, Zork Zero), you require the
".MG1" IBM graphics file. These may not have been included in the Lost
Treasures packages, but the missing files are available from the IF-archive
(see below). Give them the same name as their corresponding Z-code file, and
place them in !Zip2000.Resources.Graphics. Alternatively the MG1 file can be
renamed to "Graphics" and placed in the same directory as the Z-code file.
A number of Inform-produced games can be downloaded over the Internet.
Undoubtedly the best source for all things interactive-fiction related, is
Volker Blasius' IF-archive, at ftp.gmd.de. Two of the best freely- available
games are "Curses" by Graham Nelson, and "Christminster" by Gareth Rees.
Games are generally archived with the extensions ".z5", ".z8" etc. Download
them, and set their type to "Z-Code". Then, double-click away.
Z-code programs were formerly given (unofficial) filetypes 061-068 (Z-Code1
to Z-Code8) indicating which version they were. The extant versions are:
Versions 1 & 2: Used by very early Infocom games. You
probably won't find any of these. (I never
have). Maximum file size of 128K.
Version 3: Used by most Infocom games. Only supports
simple text displays, with limited split-
screen support.
Version 4: Full support for split-screen operation,
custom status lines and real-time input.
Text effects (italic etc.) added.
Maximum file size increased to 256K.
Version 5: Added support for undo, colours, multiple
fonts, real-time input, and the mouse.
Version 6: Radically overhauled the screen model,
adding multiple windows and graphics. Also
increased the maximum file size to 512K.
Versions 7 & 8: Long after the death of Infocom, these were
invented by Graham Nelson. They are exactly
the same as Version 5, except internal
changes allow larger game files. (512K in
both cases). They are a way of creating
large games that doesn't involve handling
all the extra complexities of Version 6.
The old filetypes are now deprecated, as an official filetype (11A) has been
allocated for Z-code programs. You can find out the version of a story file
(regardless of its filetype) from Zip 2000's "About this file" dialogue box
(see below).
What do I do with a Blorb file?
-------------------------------
Blorb is a standard for packaging a Z-code story file together with its
sound and graphical resources. On other platforms, Blorb files are given
the extension ".blb". On RISC OS, the filetype should be set to Blorb (17B).
If the Blorb file contains the Z-code, you can just treat it as a standard
story file, and double-click on it to start it. If a game has separate
Z-code and story files, the Blorb file can be either:
1) Called "Blorb", in the same directory as the Z-code file.
2) If the Z-code is "games.MyGame", the Blorb is "blorb.MyGame".
or 3) Placed in !Zip2000.Resources.Blorb, with the same name as the Z-code
file.
These locations are searched in that order. If a Blorb file is found,
Zip 2000 will not look anywhere else for its sound or graphics files.
What widgets does Zip 2000 have?
--------------------------------
Well, for starters you can alter the screen size while running (except V6).
This might cause some games to get a bit confused, as they may only check
the screen size when loaded/restarted. I would suggest you find a screen
size you like then use the Choices dialogue box to save it. The screen size
for Version 6 is fixed at 80x25 characters.
You can also choose which fonts to use for display. Any text already on the
screen may become wrongly aligned when you change font, but any new text
will be OK. The font you choose as your "fixed-space" font _must_ be fixed
space, or the screen display will go awry. Some odd fonts (such as
System.Fixed) will not produce nice results, as they are somewhat
differently aligned to most other fonts.
If you have a game that uses unusual accented characters, you should
select an appropriate font, then select the correct alphabet from the
Alphabet menu. Some fonts can provide a number of alphabets.
Trinity.Medium, for example, provides Latin1, Latin2, Latin3 and Latin4.
Others will provide a fixed alphabet - you should tell Zip 2000 what
alphabet your font provides by selecting the appropriate alphabet.
I recommend that you turn on horizontal sub-pixel anti-aliasing up to 12pt
in Configure for a higher quality display.
The window border can be turned on and off using the "Border" menu item on
the Style menu.
The Choices dialogue box contains a number of options:
Quick loading: Don't pop up a "The story is loading" message
while loading the file.
Pause on exit: When a game quits, wait for a keypress before
closing the window. You might find some games
tend to print lots of text, then quit. Turn this
on if you want a chance to read it.
Show caret...: Normally the caret is only shown while inputting
a line of text. Turn this on to also show the
caret while waiting for a keypress. (Does not
affect V6 games, which are able to turn the
caret on and off themselves).
Confirm quitting: Ask if you really want to quit the game when
you close the window.
Confirm Ask if you really want to overwrite saved game
overwriting: files or command script files.
Smart quotes: Try to turn the standard "sexless" quotes into
open and close quotes intelligently, use
fi and fl ligatures, and use em and en dashes
where appropriate.
Interpreter Nº: Some Infocom games behave differently depending
on which machine they think they're running.
This menu option allows you to change what
Zip 2000 claims to be. Note that the games often
only check this when restarted. For best results,
I recommend keeping this set to 6 (IBM PC).
Consecutive UNDOs:This option allows you to choose how many times
you wish to be able to UNDO in succession. Each
available UNDO will take typically 30K of
memory. If you change this option, it will not
take effect until Zip 2000 is reloaded.
Note that games created with Inform (as of
version 6/7 of the library) do not allow
multiple UNDOs, so this feature currently only
works with Infocom games. Stefan Jokisch's
Frotz gets around this by having an UNDO "hot
key", but I believe that this affects game
balance - a game may not wish UNDO to be
available in certain situations (eg Beyond
Zork during combat). Therefore you will
have to wait for the Inform library to be
updated.
Default colours: Choose your default screen colours here.
At the moment, this will usually not take
effect until the game is restarted.
The Save button saves these options, plus any options on the Style and
Utilities menus.
Ah yes, the Utilities menu. This currently contains three options.
"Claim F12" sets whether Zip 2000 claims F12 and passes it to the game, or
ignores it and lets the Wimp bring up the command line.
"Line editing" enables the line editing feature - you can use the left and
right cursor keys to move the cursor within the line. If this option is
enabled, the game will not receive the left and right cursor keys if they
are pressed during line input. This should not normally be a problem.
The line editing keys Zip 2000 responds to with line-editing enabled are:
Left, Right, Shift-Left, Shift-Right, Ctrl-Left, Ctrl-Right,
Delete, Backspace, Copy/End, Ctrl-Copy/End, Ctrl-U
With line-editing disabled, you can only use:
Delete, Backspace, Ctrl-U
"Command recall" enables the command recall feature - use the up and down
cursor keys to recall previous lines of input. If enabled, the game will not
receive the up and down cursor keys if they are pressed during line input.
This might cause a problem in some games - Beyond Zork being a case in
point.
"Keypad functions" selects whether the numeric keypad is used for
number entry or as a set of special "function keys". In some games,
for example Beyond Zork, the keypad can be used to move you around if
this option is enabled.
The "About this file" dialogue box is slightly unorthodox. It shows
the release number and serial number of a game file, plus its Z-code
version. The file size displayed is that reported in the file's header -
not the space it actually occupies on disc.
Where do saved files go?
------------------------
First, saved game files are stored in !Zip2000.Resources.SavedGames,
if you just type a leafname. You can type a full pathname to put it
elsewhere. Future versions may incorporate drag & drop saving, but
personally I think it's easier just to type in a filename while playing
a text adventure. This default location can be altered in Zip 2000's
!Run file; if you are a floppy-disc user you may want to set
ZipSave$Path to ADFS::$.0.
Secondly, transcript and record files are, by default, stored in the
same directory as !Zip2000.
Thirdly, auxiliary files saved by games are stored in
!Zip2000.Resources.Files. (If a game wants to save a file PLAYER.AUX
it will be saved as !Zip2000.Resources.AUX.PLAYER).
You mentioned sound support. How does this work?
------------------------------------------------
Well, currently there are only two games that support sound: The Lurking
Horror, and Sherlock. Here I will explain how to play The Lurking Horror
with sound.
Buy Lost Treasures of Infocom I (PC version), then download Stefan Jokisch's
archive of Lurking Horror sounds from ftp.gmd.de. Create a "Lurking"
directory in !Zip2000.Resources.Sounds, and copy Stefan's sound files
(LURKINnn/SND) into this directory.
Next, you will need to convert your PC release 203 Lurking Horror into
Release 221 (the Amiga version). Stefan supplies a program to do this, but
it's a PC one. I have recompiled it for RISC OS, and you will find it in the
Utilities directory. Use it to update your story file, as Stefan explains.
And that's all there is to it. When you run The Lurking Horror, you will now
be scared out of your wits.
The procedure for Sherlock is similar; again the conversion program is in
the Utilities directory.
Technical stuff
~~~~~~~~~~~~~~~
In general, if a game tries to play sound n, Zip 2000 will look in
Resources.Sounds for a directory with the same name as the game file. If it
doesn't find one, it will look for a directory "Sounds" in the same
directory as the game file. It will then look in that directory for the file
"ssssssnn/SND", where ssssss is the first six characters of the story file's
leafname, and nn is the number of the sample (padded to 2 digits). So
Sherlock's sounds might be stored as "SHERLO03/SND" upwards. The files
should be Macintosh format ".DAT" files, as archived at ftp.gmd.de by Stefan
Jokisch.
You mentioned mouse support. How does this work?
------------------------------------------------
You click on the window. This will only work if a game states that it wants
to use the mouse in its header. The only games that I know of that use the
mouse are Beyond Zork, Zork Zero, Shogun, Journey, Arthur, and my own
SameGame.
I notice that Zip 2000 puts the full title of a
game into it's title bar. How do they do that?
----------------------------------------------
By cheating. The file !Zip2000.Messages contains a full list of all known
Infocom games, plus some Inform ones, matching release/version numbers (as
shown by the About this File box) to full names. You may feel free to add
new games to this file. A proposal is on the table to store this
information in Blorb files.
Version 6 notes
---------------
The original Infocom games' graphics frequently use colours not well
approximated by RISC OS' default 256-colour palette. Therefore for best
effect, you should ideally play in a 32 thousand colour mode.
Note that Version 6 games run a LOT faster on a RISC OS 3.6 machine, as the
RISC OS 3.6 version of SpriteExtend can custom-assemble much faster sprite
plotting routines (typically three times faster than RISC OS 3.5).
A few visual glitches occur in Zork Zero and Journey. This the result of
Infocom not properly taking account of the effects of proportional fonts
(eg measuring the width of a string to centre it, but switching to bold
_after_ it's measured it, because it assumes a piece of bold text is the
same length as the same text in roman). Other mistakes are probably mine.
The screen bitmap is stored either as a 640x200 or 640x400 sprite, depending
on the current screen mode when Zip 2000 is loaded. This does not change
until Zip 2000 is reloaded, so if you change from a square pixel mode to a
rectangular pixel mode (or vice versa) you should start Zip 2000 again.
Zip 2000 is not bright enough to turn off the border if you start a Version
6 game in a 640x480 mode, so you will lose part of the display. You can turn
it off manually (and save this choice if you wish).
What standards does Zip 2000 conform to?
----------------------------------------
1) Zip 2000 aims to be an accurate Z-machine implementation, as per
the Z-Machine Standards Document, Version 1.0.
To support Unicode characters, Zip 2000 will allow you to select
a font + an "alphabet" setting. The alphabet selects a mapping
table, to tell Zip 2000 what Unicode characters &80-&FF in the
font correspond to. (&00-&7F are assumed to correspond to ASCII/
ZSCII/Unicode characters &00-&7F). Some RISC OS fonts, such as
Trinity.Medium, can provide multiple alphabets, and will switch
as you change the alphabet setting. Others provide only one
alphabet, so you must select the correct alphabet to tell
Zip 2000 what that alphabet is.
To teach Zip 2000 about a new alphabet, just create a mapping
file and place it in !Zip2000.Resources.Encodings.
Zip 2000 is not capable of handling bidirectional text,
combining characters, or languages with unusual formatting
rules.
2) Zip 2000's save files are in the standard Quetzal format. This
means you can transfer your saved positions to and from other
Quetzal-supporting interpreters. Previous versions of Zip 2000
used two other formats (an uncompressed format from version 1.00 to
1.14, and a Frotz-like compressed format from 1.15 to 1.29). This
version will still load these, but be aware that when you save
again, the resulting Quetzal file will not quite be correct - a
different interpreter may not be able to load it.
3) A new format for packaging sound and graphics for Z-code programs
has been defined, called Blorb. Zip 2000 only partially supports
this format - only AIFF sound chunks work in any useful fashion.
In the interim, Zip 2000 understands Infocom Macintosh sound files
and Infocom IBM .MG1 graphics files, as described above.
How much do I pay you for this wondrous program?
------------------------------------------------
Nothing, unless you particularly want to. Zip 2000 is freeware.
So, like, what's the history of this thing?
-------------------------------------------
Version 1.00 (17-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
First public release. Conformance to Graham Nelson's proposed
Standard 0.2 (15-Nov-95).
Version 1.01 (20-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
File size now extracted from header.
Bugs fixed:
When the screen size was changed, the game wasn't told.
When games exited, anything printed since the last new-line
wasn't displayed.
Conformance improvements:
random 0 (randomise RNG) was not implemented
All sorts of screen handling stuff fixed, in particular:
Buffering in upper window on V4 and earlier.
Initial cursor position in V4 and earlier.
Character wrapping when buffering off.
Style changes in upper window being passed to lower.
erase_window -1 & -2 sorted out.
The illegal command @sound_effect (no parameters) caused
a crash. It now simply beeps.
Version 1.02 (22-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
You can now choose whether the caret is displayed while waiting
for a character.
Function keys F1-F11 now always claimed - F12 is toggleable.
Quitting behaviour overhauled.
[REG] Command recall part of line editing implemented.
[REG] Smart quotes, ligatures and dashes.
Conformance improvements:
Accented characters are now correctly lower-cased when put
into input buffer.
Backspace now returned from read_char (this was an omission
from revision 0.2 of the Standard).
Foreign quotes (« and ») swapped - a mistake in revision 0.2.
Interrupt routines were being called with the timeout
as a parameter.
Return is now passed to the game as code 13, rather than 10 -
this is required by Bureaucracy.
Version 1.03 (23-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
Memory was often lost when a game using sound was quit.
Repeated sounds didn't work properly in V5.
Conformance improvements:
Sound callback routines implemented - Sherlock's sounds now
operate correctly.
Delete input code changed from 8 to 127.
Version 1.04 (27-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Sound data now stored in a dynamic area, rather than the
module area.
Official filetype allocated.
[REG] Selectable fonts.
Paging system removed to speed up interpretation (it was broken
anyway). Various other optimisations made.
Bugs fixed:
The save opcode was not correctly implemented in V4 - it was
not possible to save on many V4 games.
Text was often a couple of pixels out of line in upper window.
Some upper window flicker removed.
Nasty memory corruption fixed - printing a complicated line of
text (lots of style changes) would mangle the game's dictionary
(if you were lucky).
The size of a Version 7 game was wrongly read from the header
for the purposes of the verify opcode, and in a number of other
places (although note that Inform 5.5 also puts the wrong size
in the header - these bugs would cancel each other out for
V7 games less than 256K).
Conformance improvements:
The return value of the read opcode was -1 (rather than 0) if it
was terminated by a time-out.
The nop opcode was not implemented (!).
The get_cursor opcode was not implemented.
Trapped divide by zero errors nicely.
Now more rigorous trapping writes outside the dynamic area.
Tokeniser revised - it was being over-clever.
[MORE] prompts improved.
set_font 0 wasn't implemented.
Alternate alphabets can now be changed at run-time.
Fourth parameter of print_table was not implemented.
Characters 0 and 13 in text did not behave as specified.
Mouse position was only updated on clicks. It should now be
possible to write a doodling program (!).
Version 1.05 (28-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Prototype (text-only) version 6 support. Sufficient to get Zork Zero
going in a basic sort of fashion.
Version 1.06 (30-Nov-95)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
Version 3 games didn't take account of the status line when deciding
when to print "[MORE]".
Beeps made slightly quieter (they were somewhat louder than the
standard VDU 7 beep).
Game file no longer kept open while playing.
Conformance improvements:
Mid-line font changes, and changes of the fixed-space header bit
handled better. This includes a major word-wrapping overhaul.
Output stream 1 couldn't be turned on and off in mid-line.
[This trick is used at the start of Zork Zero so that the initial
letter A is a fancy graphic on screen, but output as normal to
a transcript. Interestingly, though, Infocom's IBM interpreter
also gets this wrong.]
Version 1.10 (13-Dec-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Full Version 6 support, including graphics and menus.
Word-wrapping wraps on hyphens.
Performance improvement by removing unnecessary 16-bitness.
[REG] Can choose what type of computer Zip 2000 claims to be.
Sound files split into directories inside Resources.Sounds. Will also look
for sounds in a "Sounds" directory alongside the game file.
Window border can be turned on and off.
[REG] Default text colours selectable.
Bugs fixed:
READ_MOUSE slightly corrupted memory.
Couldn't transcript to "RAM:Fred".
Various problems with the caret fixed. For example, Zip 2000 wouldn't
let the input focus escape while you were playing Freefall.
Error handling improved.
The window will be forced to a suitable size for the current
screen mode when Zip 2000 is loaded.
Conformance improvements:
Mouse buttons weren't handled correctly.
Slight end-of-paragraph wordwrapping glitch fixed.
Two changes following a newsletter distributed by Graham Nelson:
Version 7 respecified - V7 games produced with Inform 5.5
will no longer be playable.
Some foreign characters added (OE ligatures, plus Spanish
inverted ? and !).
Accented characters sometimes incorrectly terminated a line of input.
Version 1.11 (18-Dec-95)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Another slight performance improvement by removing unnecessary
16-bitness.
Bugs fixed:
The primary colours were in the wrong order in V6.
Font 3 (runes and character graphics) came out half-height in a high-
resolution mode in V6.
Newlines due to a character wrap weren't sent to the transcript.
Conformance improvements:
ERASE_PICTURE wasn't implemented.
SCROLL_WINDOW with a negative number of pixels wasn't implemented.
The line count wasn't reset to zero when a window was cleared (so
it would say [MORE] too early).
The line count wasn't incremented on a character wrap (so it
would say [MORE] too late).
Byte-sized properties weren't implemented in V4+ - this may have
affected Shogun, Journey and Zork Zero (they were never used by
Infocom in V4/5 and aren't used by Inform).
Journey had problems with its menus due to COPY_TABLE not working in
the way it expected. A temporary fix has been made until the correct
behaviour in V6 has been investigated. (If you found yourself stuck
at the river with a choice of "Return", "Return", or "Return", this
is why).
Version 1.12 (20-Dec-95)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
Buffer wasn't flushed before output redirection enabled. This
mis-aligned Zork Zero's function key definitions screen.
Lines sometimes character-wrapped instead of word-wrapping
(character wrapping occurred 1 pixel before word wrapping).
Version 1.15 (15-Jan-96)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
More efficiency improvements.
Saved games are now compressed (they're now typically 10 times smaller).
Graphics rendering approx 450% faster, thanks to more intelligent
use of the PICTURE_TABLE opcode.
Multiple UNDO.
Line input vastly improved: line editing implemented, V6 editing
much tidier, now limited to window width.
"Line editing" option split into "Line editing" and "Command recall".
"Confirm overwriting" option added.
"Smart quotes" option added.
You can press Escape to cancel a load/save.
You now get a friendly message if you attempt to load a saved game
belonging to another game.
"The story is loading..." message restored to V6 games.
Main window regains the input focus after you've finished with the
choices dialogue box.
Bugs fixed:
Character wrap problem in V6 totally eradicated.
Sound crashes fixed.
Zork Zero's map of Antharia would kill Zip 2000 (it couldn't cope
with cacheing a picture twice).
Conformance improvements:
Behaviour of COPY_TABLE revised for all versions.
Input buffer was incorrectly terminated by a zero-byte in V5+;
TOKENISE could not cope with an unterminated text buffer
in V5+ - this affected Journey.
A number of small problems with input routines fixed.
Recording, scripting and playback improved. Command script files
now store timeout information, terminating characters and mouse
co-ordinates.
SOUND_EFFECT 2 now low-pitched instead of high-pitched.
DRAW_PICTURE now takes co-ordinates as signed (the view from
the top of the Sunset Tower in Journey did not appear because
of this).
Handling of header over restores and restarts made more
rigorous.
Input line now redrawn if a timeout routine prints something.
Version 1.16 (15-Jan-96)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Tokeniser made more efficient (code borrowed from Frotz).
[MORE] prompt appears 1 line earlier after a READ, to stop your
line of input disappearing off the top of the screen.
Bugs fixed:
The "new improved" command replaying didn't work properly.
Replayed commands with terminating characters did not display
correctly.
Replayed commands had a spurious newline after them.
V6 smart quotes were broken in version 1.15.
Version 1.17 (18-Jan-96)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Large overhaul of the Z-machine "CPU". It is now almost totally
32-bit internally, resulting in far more effective use of the ARM.
In a quick benchmark, a prime-finding routine that took 3 minutes
13 seconds in Zip 2000 v1.00 now takes 1 minute 30 seconds. (This
also shaved 3½K of code off v1.16).
Bugs fixed:
Newlines printed while buffering was off didn't increment the
line counter. Line counts after a READ tweaked again.
Version 1.18 (23-Jan-96)
~~~~~~~~~~~~~~~~~~~~~~~~
Conformance improvements:
INPUT_STREAM 0 wasn't implemented.
Bugs fixed:
Confirm overwriting didn't work properly.
If command recall was used during a filename prompt, Zip 2000 would
crash.
Zip 2000 now crashes somewhat more gently(!)
Version 1.19 (28-Jan-96)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
Used to abort with a "Buffer too short." error when run on a machine
with Doggysoft's "NewerLook" installed.
The last word separator (usually " in Infocom games) was not picked
up.
Version 1.20 (10-Mar-96)
~~~~~~~~~~~~~~~~~~~~~~~~
General improvements:
Memory usage reduced for non-V6 games.
The game data and stack now placed in a dynamic area (primarily to aid
the experimental Infix debugger).
Central instruction dispatcher hand-crafted in assembler for speed (the
aforementioned speed benchmark now takes 1 minute 10 seconds).
Bugs fixed:
If you had one of Zip 2000's menus up when you quit Zip 2000 (by typing
QUIT in the game), the desktop would collapse. This is thanks to a bug
in the current version of the Toolbox. Menus are now closed just before
quitting, as a work-around.
Doesn't reset the current sound voice to WaveSynth-Beep after playing
a sound effect.
Version 1.21 (20-Mar-96)
~~~~~~~~~~~~~~~~~~~~~~~~
New features:
Font 3 not loaded until required.
Conformance improvements:
Text margins are no longer reset when a window was cleared.
Cursor now confined within margins when using SET_CURSOR.
Bugs fixed:
PICTURE_DATA now responds correctly when asked about a
non-existent picture.
Now copes correctly with text windows that are not a whole number
of lines high (eg in Shogun while exploring Osaka).
V6 text width measurements were broken for anything other than
Roman text.
The last space of a line would sometimes overflow the right margin.
Version 1.22 (03-Apr-96)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
RESTART didn't work properly in version 1.21.
Version 1.23 (03-Oct-96)
~~~~~~~~~~~~~~~~~~~~~~~~
New feature:
Keypad can now be made to act normally, instead of being treated
specially.
Version 1.24 (29-Aug-97)
~~~~~~~~~~~~~~~~~~~~~~~~
Bug fixed:
Beyond Zork used to crash nastily at a certain point (no
spoilers here.) This crept in in version 1.17, and is, strictly
speaking, a bug in Beyond Zork. Now worked around.
Version 1.25 (20-Oct-97)
~~~~~~~~~~~~~~~~~~~~~~~~
Bugs fixed:
Didn't act on Message_PaletteChanged.
Keeps clear of the icon bar when opening windows.
Version 1.30 (22-Jul-98)
~~~~~~~~~~~~~~~~~~~~~~~~
Conformance improvements:
Updated to version 1.0 of the Z-Machine Standards Document.
Now saves and loads Quetzal-format save files.
New features:
Selectable alphabets.
Released as freeware.
General improvements:
Much stricter regulation of memory accesses - never used to
fault writes outside dynamic memory, for example.
Version 1.31 (04-Aug-98)
~~~~~~~~~~~~~~~~~~~~~~~~
Conformance improvements:
Will play Blorb story files. Currently only supports AIFF
sounds. Will show boxes for PNG graphics.
RANDOM -n (for n < 1000) now seeds the random number generator
as suggested in the Standard.
Screen model for V6 shaken up - screen is now 640x400 Z-pixels;
this makes more sense for Blorb graphics games.
GET_PROP_LEN 0 now returns 0. Shogun seems to require this.
Bug fixes:
Any Unicode characters outside the Latin-1 range would get
garbled if printed in the upper window.
Data aborts, etc, were bringing up a garbled error message.
General improvements:
File information dialogue box extended to show Blorb auxiliary
information.
Default choices tweaked slightly.
Own up, who helped you with it?
-------------------------------
Well, by far the largest credit goes to Mark Howell, on whose Zip
interpreter core this program is based. Many thanks, Mark.
Graham Nelson made lots of encouraging noises as I sent him two new
versions a day during early development. He also suggested all sorts
of features, some of which have actually been implemented already,
and wrote the excellent Z-machine Standards Document to which
Zip 2000 conforms (all 81 pages of it!). He also writes great test
files! (Advert: Download your copy of Jigsaw today).
Stefan Jokisch provided help with the sound support, and guided
me through the Zip source. His list of Zip bugs was most helpful,
inspiring many of the changes in versions 1.04 and 1.06. Versions
1.15 onwards have borrowed many ideas (and some code!) from his
Frotz interpreter.
Philip Banks wrote the excellent DataVox module that Zip 2000
uses to play sound effects.
The Quetzal save file format was created by Martin Frost.
The Blorb resource format was created by Andrew Plotkin.
Are there any bugs^H^H^H^H unexpected features?
-----------------------------------------------
If you play Beyond Zork, with a non-standard colour set (eg white
on blue), on a machine with RISC OS 3.5, in a 32-thousand colour
mode, you will notice that the character graphics' colours don't
match. This is a limitation of RISC OS 3.5 (not a bug). I could
work around it, but it's probably not worth the trouble.
RISC OS 3.6 is fine.
The colour selection in the Choices dialogue box will generally
not take effect until the game is restarted.
Adjust-clicking on a game-created menu will not always do quite
what it should. I can assure you there is a very good technical
reason for this. I've thought of a work-around, and will
implement it in a future version.
Changing the font may cause the current input line to become
a little confused. This will be cured when you press Return.
Smart dashes don't work as well in V6 as in other versions.
And where can I contact you when I find more "features"?
--------------------------------------------------------
My e-mail address is kbracey@acorn.co.uk.
My physical location is: Kevin Bracey,
90 Sleaford Street,
CAMBRIDGE
CB1 2PU
Please, please, please, please, _please_, let me know of any bugs you find,
or any suggestions you have for future versions.
Licence arrangements
--------------------
Zip 2000 is Copyright 1998, Kevin Bracey. It may be freely distributed,
providing you distribute the whole application directory unaltered, including
this file.